import { Injectable } from '@nestjs/common';
import { CreateRxjsTestDto } from './dto/create-rxjs-test.dto';
import { UpdateRxjsTestDto } from './dto/update-rxjs-test.dto';
import { Observable, of, interval, map } from 'rxjs'
import { filter } from 'rxjs/operators'
@Injectable()
export class RxjsTestService {
  // 返回一个包含数据的 Observable
  getData(): Observable<number[]> {
    return of([1, 2, 3]);
  }


  // 返回一个每隔1秒发出一个数字的 Observable
  getIntervalData(): Observable<number> {
    return interval(1000).pipe(map(v => (v * 2)), filter(v => (v % 2 === 0)))

    // return data
  }

  create(createRxjsTestDto: CreateRxjsTestDto) {
    return 'This action adds a new rxjsTest';
  }

  findAll() {
    return `This action returns all rxjsTest`;
  }

  findOne(id: number) {
    return `This action returns a #${id} rxjsTest`;
  }

  update(id: number, updateRxjsTestDto: UpdateRxjsTestDto) {
    return `This action updates a #${id} rxjsTest`;
  }

  remove(id: number) {
    return `This action removes a #${id} rxjsTest`;
  }
}
